home *** CD-ROM | disk | FTP | other *** search
/ CU Amiga Super CD-ROM 17 / CU Amiga Magazine's Super CD-ROM 17 (1997)(EMAP Images)(GB)[!][issue 1997-12].iso / CUCD / Programming / DiceSource / master / Examples / Printer_Driver / density.c < prev    next >
C/C++ Source or Header  |  1994-02-01  |  836b  |  35 lines

  1.  
  2. /*
  3.  *  DENSITY.C
  4.  *
  5.  *  David Berezowski - March/88.
  6.  *  Modified for DICE - May/91    Matthew Dillon
  7.  *
  8.  *  Copyright (c) 1988  Commodore-Amiga, Inc.
  9.  *  (c)Copyright 1991 Matthew Dillon
  10.  */
  11.  
  12. #include "defs.h"
  13.  
  14. Prototype short SetDensity(ULONG);
  15.  
  16. short
  17. SetDensity(density_code)
  18. ULONG density_code;
  19. {
  20.     /* SPECIAL_DENSITY       0   1   2    3    4      5    6    7 */
  21.  
  22.     static int XDPI[8] = {90, 90, 120, 180, 360, 360, 360, 360};
  23.     static char codes[8] = {38, 38, 33, 39, 40, 40, 40, 40};
  24.  
  25.     PED->ped_MaxColumns = PD->pd_Preferences.PaperSize == W_TRACTOR ? 136 : 80;
  26.     density_code /= SPECIAL_DENSITY1;
  27.  
  28.     /* default is 80 chars (8.0 in.), W_TRACTOR is 136 chars (13.6 in.) */
  29.  
  30.     PED->ped_MaxXDots = (XDPI[density_code] * PED->ped_MaxColumns) / 10;
  31.     PED->ped_XDotsInch = XDPI[density_code];
  32.     return(codes[density_code]);
  33. }
  34.  
  35.